﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.Text;
using WSProyecto.Persistencia;
using WSProyecto.Dominio;

namespace WSProyecto
{
    public class Proyecto : IProyecto
    {
        private ProyectoDAO proyectoDAO = null;
        private ProyectoDAO ProyectoDAO
        {
            get
            {
                if (proyectoDAO == null)
                    proyectoDAO = new ProyectoDAO();
                return proyectoDAO;
            }
        }

        public proyecto CrearProyecto(string nombre, DateTime fechaini, DateTime fechafin, string descripcion, int presupuesto)
        {
            proyecto proyectoACrear = new proyecto()
            {
                nom_pro = nombre,
                fec_ini = fechaini,
                fec_fin = fechafin,
                des_pro = descripcion,
                pre_pro = presupuesto
            };
            return ProyectoDAO.Crear(proyectoACrear);
        }

        public proyecto ObtenerProyecto(int codigo)
        {
            return ProyectoDAO.Obtener(codigo);
        }

        public proyecto ModificarProyecto(int codigo, string nombre, DateTime fechaini, DateTime fechafin, string descripcion, int presupuesto)
        {
            proyecto proyectoAModificar = new proyecto()
            {
                cod_pro = codigo,
                nom_pro = nombre,
                fec_ini = fechaini,
                fec_fin = fechafin,
                des_pro = descripcion,
                pre_pro = presupuesto
            };
         

            return ProyectoDAO.Modificar(proyectoAModificar);
        }

        public void EliminarProyecto(int codigo)
        {
            proyecto proyectoExistente = ProyectoDAO.Obtener(codigo);
            ProyectoDAO.Eliminar(proyectoExistente);
        }
    }
}
